Содержание
Назначение
Сервис логирует действия выполненные пользователями в ЛК РП.
Описание
Сервис обеспечивает следующие функции:
- Запись информации о авторизации и выходе из системы
- Запись информации о пользовательских операциях выполненных в ЛК РП
- Запись информации о выгружаемых документах
- Запись информации о загружаемых документах
Взаимодействие с другими сервисами
Сервис вычитывает информацию направляемую ЛК РП в топиках ervu.lkrp.auth.events, ervu.lkrp.action.events, ervu.lkrp.import.file, и информацию направляемую ervu-validate-recruits в топиках ervu.lkrp.validate.response и ervu.lkrp.upload.failed.
Для реализации возможности журналирования действий выполняемых на стороне ЛК РП, принято решение о необходимости добавления базы данных. Так же для минимизации объема данных и ускорения работы сервиса в указанной базе данных будет использовать расширение TimescaleDB (возможность использования согласована с Солар)Журналирование ЛК РП 20241113_TPS.docx
События срок давности которых превысить 6 месяцев, должны удаляться из журналов и их БД.
Строение БД ervu-lkrp-journal-service
Журнал авторизаций ЛК РП
Описание Журнала авторизаций ЛК РП
В
Журнале авторизаций ЛК РП будет записываться информация о успешной
авторизации, ошибки при авторизации, успешном выходе из системы и ошибке
при выходе из системы.
Алгоритм работы сервиса при авторизации
Вход в систему
Выход из системы
Сообщения в Kafka
ФЛ
ervu.lkpr.person.search.request
ervu.lkpr.person.search.response
ЮЛ
ervu.organization.request
ervu.organization.response
Для передачи полученных данных в новый сервис ervu-lkpr-journal необходимо создать новый топик lkrp.auth.event.
{
"esiaPersonId": "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"subsystem": "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"eventTime": "0000-00-00T00:00:00.000Z", // дата и время события
"eventType": "logout", // тип события. login - вход, logout - выход
"status": "success", // статус. success - успех, failure - ошибка
"firstName": "Иван", // имя пользователя
"lastName": "Иванов", //фамилия пользователя
"middleName": "Иванович", //отчество пользователя
"snils": "123-456-789 00", // СНИЛС пользователя (обязательно только для "subsystem": "FL")
"inn": "7731347089", // ИНН организации (обязательно только для "subsystem": "UL")
"organizationName": "PRIMER PROEKT" // Наименование организации (обязательно только для "subsystem": "UL")
} |
|---|
{
"esiaPersonId": "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"subsystem": "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"eventTime": "0000-00-00T00:00:00.000Z", // дата и время события
"eventType": "logout", // тип события. login - вход, logout - выход
"status": "success", // статус. success - успех, failure - ошибка
"firstName": "Иван", // имя пользователя
"lastName": "Иванов", //фамилия пользователя
"middleName": "Иванович", //отчество пользователя
"snils": "123-456-789 00", // СНИЛС пользователя (обязательно только для "subsystem": "FL")
"inn": "7731347089", // ИНН организации (обязательно только для "subsystem": "UL")
"organizationName": "PRIMER PROEKT" // Наименование организации (обязательно только для "subsystem": "UL")
} |
Журнал пользовательских операций ЛК РП
В Журнале пользовательских операций ЛК РП должна выводится информация о времени и дате события, с учетом часового пояса пользователя и часового пояса по Москве. Записям присваивается идентификатор. Должны отображаться: Фамилия, Имя, Отчество. Выводится информация об адресе страницы, идентификаторе нажатой кнопки и тип события. Для события "Поиск по фильтру" должны отображаться атрибуты по которым осуществлен поиск, а также значения этих атрибутов.
Какие действия подлежат логированию в ЖПО?
ФЛ:
Переход в личный профиль
Нажатие на кнопку "Открыть повестку" в блоке "Повестки"
Нажатие на кнопку "Посмотреть делали" в блоке "Временные меры"
ЮЛ:
Нажатие на кнопку "Журнал взаимодействий"
Проставление/сброс фильтрации в журнале взаимодействий
Информация
о выполненных пользователем действиях записывается в новый топик
lkrp.action.event, данный топик читается сервисом ervu-lkrp-journal с
дальнейшим формированием записи в разделе Журнал пользовательских
операций ЛК РП.
{
"esiaPersonId": "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"eventTime" : "0000-00-00T00:00:00.000Z", // дата и время события
"subsystem" : "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"eventType" : "Поиск по фильтру", // Указывается выполненное пользователем действие, например: открытие страницы, поиск по фильтру, Скачивание шаблона.
"description" : "Журнал взаимодействий", // Указывается Описание раздела либо блока в котором произведено действие
"searchAttribute" : [Атрибут поиска], // Указывается атрибут на основании которого выполнялась фильтрация (необязательный атрибут)
"searchValue" : [Значение атрибута], // Указывается значение атрибута на основании которого выполнялась фильтрация(необязательный атрибут)
"fileName" : "Прил.12_Ежегод_сверка", // необязательный атрибут
"sourceUrl" : "https://" // Заполняется ссылкой на источник
} |
|---|
{
"esiaPersonId": "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"eventTime" : "0000-00-00T00:00:00.000Z", // дата и время события
"subsystem" : "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"eventType" : "Поиск по фильтру", // Указывается выполненное пользователем действие, например: открытие страницы, поиск по фильтру, Скачивание шаблона.
"description" : "Журнал взаимодействий", // Указывается Описание раздела либо блока в котором произведено действие
"searchAttribute" : [Атрибут поиска], // Указывается атрибут на основании которого выполнялась фильтрация (необязательный атрибут)
"searchValue" : [Значение атрибута], // Указывается значение атрибута на основании которого выполнялась фильтрация(необязательный атрибут)
"fileName" : "Прил.12_Ежегод_сверка", // необязательный атрибут
"sourceUrl" : "https://" // Заполняется ссылкой на источник
} |
Журнал импорта файлов из ЕРВУ
В журнале импорта файлов из ЕРВУ должны выводиться документы запрошенные пользователем, например: Выписка повестки, Выписка воинского учета, для ЮЛ Выписка журнала взаимодействий.
lkrp.import.file
{
"esiaPersonId", "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"eventTime" : "0000-00-00T00:00:00.000Z", // дата и время события
"subsystem" : "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"downloadType" : "Повестки ФЛ", // наименование подраздела из которого выполнялось скачивание файла: Журнал взаимодействий ЮЛ, Воинский учет ФЛ, Повестки ФЛ.
"status" : "succes", // // статус. success - успех, failure - не успешно
"fileName" : "Выписка.xlsx", // отображает наименование выгруженного файла
"s3FileUrl": "ссылка на файл из s3"
"fileSize" : "500b" //??
} |
|---|
{
"esiaPersonId", "1000352722", // Идентификатор пользователя из ЕСИА
"esiaOrgId": "1000352722", // (обязательно только для "subsystem": "UL")
"eventTime" : "0000-00-00T00:00:00.000Z", // дата и время события
"subsystem" : "FL", // подсистема. FL - для физ. лиц, UL - для юр. лиц
"downloadType" : "Повестки ФЛ", // наименование подраздела из которого выполнялось скачивание файла: Журнал взаимодействий ЮЛ, Воинский учет ФЛ, Повестки ФЛ.
"status" : "succes", // // статус. success - успех, failure - не успешно
"fileName" : "Выписка.xlsx", // отображает наименование выгруженного файла
"s3FileUrl": "ссылка на файл из s3"
"fileSize" : "500b" //??
} |
Журнал экспорта файлов в ЕРВУ
В журнале экспорта файлов в ЕРВУ должны выводиться документы загруженные пользователем в систему. Форма шаблона соответствует номеру загружаемого в ЛК РП документа.
ervu.lkrp.validate.response
{
"eventTime": "0000-00-00T00:00:00.000Z", // дата и время события
"orgInfo": {
"orgName": "Звезда",
"esiaOrgId": "1000352722", // Идентификатор организации из ЕСИА"
"orgId": "a9cd9118-2e00-44ee-ba63-6d379ee1b45f",
"prnOid": "1000322154",
"senderInfo": {
// информация об отправителе документов
"lastName": "Максимов", // фамилия пользователя
"firstName": "Геннадий", // имя пользователя
"middleName": "Валентинович", // отчество пользователя
},
"fileInfo": {
"fileId": "001f999d-49fc-4c57-9311-720fe5536fd9",
"fileUrl": "s3://lkrp-av/test_12.csv",
"filePatternCode": "9",
"filePatternName": "Сведение о приеме на работу (увольнении), зачислении в образовательное учреждение (или отчислении)",
"fileName": "Прил.12_Ежегодн_сверк", // наименование файла
"fileSize": "100kb", //размер файла
"fileStatus": {
"code": "07",
"status": "Принято ЕРВУ",
"description": "Все записи успешно прошли проверку ФЛК"
}
},
"validationInfo": [
{
"code": "SUC01",
"description": "Пройден ФЛК",
"rows": [
2
]
}
],
"rowsSuccess": 1,
"rowsCount": 1
} |
|---|
{
"eventTime": "0000-00-00T00:00:00.000Z", // дата и время события
"orgInfo": {
"orgName": "Звезда",
"esiaOrgId": "1000352722", // Идентификатор организации из ЕСИА"
"orgId": "a9cd9118-2e00-44ee-ba63-6d379ee1b45f",
"prnOid": "1000322154",
"senderInfo": {
// информация об отправителе документов
"lastName": "Максимов", // фамилия пользователя
"firstName": "Геннадий", // имя пользователя
"middleName": "Валентинович", // отчество пользователя
},
"fileInfo": {
"fileId": "001f999d-49fc-4c57-9311-720fe5536fd9",
"fileUrl": "s3://lkrp-av/test_12.csv",
"filePatternCode": "9",
"filePatternName": "Сведение о приеме на работу (увольнении), зачислении в образовательное учреждение (или отчислении)",
"fileName": "Прил.12_Ежегодн_сверк", // наименование файла
"fileSize": "100kb", //размер файла
"fileStatus": {
"code": "07",
"status": "Принято ЕРВУ",
"description": "Все записи успешно прошли проверку ФЛК"
}
},
"validationInfo": [
{
"code": "SUC01",
"description": "Пройден ФЛК",
"rows": [
2
]
}
],
"rowsSuccess": 1,
"rowsCount": 1
} |





Добавить комментарий